package com.laogao.lesson016.trace;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

/**
 * <b>description</b>： Java进阶、性能优化实战案例100讲，微信公众号:程序员恰恰，源码 & 文档 & 技术支持，请加个人微信号：it3306 <br>
 * <b>time</b>：2025/3/3 12:06 <br>
 * <b>author</b>：ready lao_gao
 */

/**
 * 设置为 false（proxyBeanMethods = false）
 * Spring不生成代理对象，每次调用 @Bean 方法时，都会直接执行方法体并返回一个新的实例
 */
@Configuration(proxyBeanMethods = false)
public class TraceConfiguration {
    @Bean
    public TraceFilter traceFilter() {
        return new TraceFilter();
    }

    @Bean
    public ResultTraceIdAspect fillRequestIdAspect() {
        return new ResultTraceIdAspect();
    }
}
